home *** CD-ROM | disk | FTP | other *** search
/ Info-Mac 3 / Info_Mac_1994-01.iso / Development / 4th Dimension / Credit Card Check Source < prev    next >
Internet Message Format  |  1993-12-20  |  1KB

  1. From: "Rene G.A. Ros" <rgaros@bio.vu.nl>
  2. Subject: creditcard-check.txt 
  3. Date: Fri, 13 Aug 93 12:33:10 MET DST 
  4.  
  5. Card check proc.txt
  6.  
  7. Small procedure to check if credit card number is correctly
  8. entered.
  9.  
  10.  
  11. `this procedure calculates the last number of a credit card number
  12. `(at least VISA and Mastercard). These have a kind checksum.
  13. `By doing this and comparing with the entered value you can check if
  14. `there were no type mismatches.
  15. `Based on some C-source code by Diomidis Spinellis <dds@doc.ic.ac.uk>
  16. `published on Internet.
  17.  
  18. `Ported to 4D by Rene G.A. Ros
  19. `D.C. van Krimpenstraat 3
  20. `1067 SG Amsterdam
  21. `The Netherlands, Europe
  22. `rgaros@bio.vu.nl
  23.  
  24. `digit:=Card check(creditcard nr)
  25. `digit is a single character which is calculated
  26. `creditcard nr are the first 15 characters of the credit card nr
  27.  
  28. `place somewhere else:
  29. `C_STRING("Card check";15;$1)
  30. `C_STRING("Card check";1;$0)
  31.  
  32. C_INTEGER($length;$i;$s;$t)
  33.  
  34. $length:=Length($1)
  35. For ($i;0;$length-1)
  36.   $t:=Num($1$length-$i)*(1+(($i+1)%2))
  37.   $s:=$s+$t-(9*Num($t>=10))
  38. End for 
  39. $0:=((10-$s%10)%10)
  40.  
  41.  
  42.